package org.hy.persistence.group;

import java.util.List;

import org.apache.ibatis.annotations.Param;
import org.hy.domain.group.GPoint;

/**
 * 积分映射器
 * @author xwm
 *
 */
public interface GPointMapper {

	/**
	 * 添加积分
	 * @param GPoint积分对象
	 * @return
	 */
	int insertGPoint(GPoint GPoint);
	
	/**
	 * 添加统计积分
	 * @param GPoint积分对象
	 * @return
	 */
	int insertGPointCount(GPoint GPoint);
	
	/**
	 * 删除积分
	 * @param idGPoint
	 * @return
	 */
	int deleteGPoint(int idGPoint);
	
	/**
	 * 更新积分
	 * @param gPoint 积分对象
	 * @return
	 */
	int updateGPoint(GPoint gPoint);
	
	/**
	 * 查找积分
	 * @param id 积分id
	 * @return 积分对象
	 */
	GPoint findGPointById(int id);
	
	/**
	 * 查找小组成员发布的积分列表
	 * @param idGm 用户idGm
	 * @param offset 偏移量
	 * @param size 数目
	 * @return
	 */
	List<GPoint> findGPointByIdGm(@Param("idGm")int idGm,@Param("offset")int offset,@Param("size")int size);

	/**
	 * 查找小组的积分
	 * @param gid 小组id
	 * @param offset 偏移量
	 * @param size 数目
	 * @return 积分列表
	 */
	List<GPoint> findGPointByGid(@Param("gid")int gid,@Param("offset")int offset,@Param("size")int size);

	/**
	 *  查找用户发表的积分列表，包含各个小组的积分列表
	 * @param uid 用户id
	 * @param offset 
	 * @param size
	 * @return 积分列表
	 */
	List<GPoint> findGPointByUid(@Param("uid")int uid,@Param("offset")int offset,@Param("size")int size);
	

}
